package co.edu.usbcali.sgi.modelo.dto;

import co.edu.usbcali.sgi.modelo.GrupoFamiliar;
import co.edu.usbcali.sgi.presentation.backEndBeans.GrupoFamiliarView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;


/**
*
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class GrupoFamiliarDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String estCod_Estado;
    private String perCedula_Persona;
    private String proInmCod_PropietarioInmueble;
    private String grfCod;
    private boolean rowSelected = false;
    private GrupoFamiliarView grupoFamiliarView;
    private GrupoFamiliar grupoFamiliar;

    public GrupoFamiliar getGrupoFamiliar() {
        return grupoFamiliar;
    }

    public String listener_update(ActionEvent e) {
        try {
            grupoFamiliarView.action_modifyWitDTO(((grfCod == null) ||
                grfCod.equals("")) ? null : new String(grfCod),
                ((estCod_Estado == null) || estCod_Estado.equals("")) ? null
                                                                      : new String(
                    estCod_Estado),
                ((perCedula_Persona == null) || perCedula_Persona.equals(""))
                ? null : new String(perCedula_Persona),
                ((proInmCod_PropietarioInmueble == null) ||
                proInmCod_PropietarioInmueble.equals("")) ? null
                                                          : new String(
                    proInmCod_PropietarioInmueble));
            rowSelected = !rowSelected;
        } catch (Exception ex) {
            return "";
        }

        return "";
    }

    public void listener_cancel(ActionEvent e) {
        grfCod = grupoFamiliar.getGrfCod().toString();
        estCod_Estado = (grupoFamiliar.getEstado().getEstCod() != null)
            ? grupoFamiliar.getEstado().getEstCod().toString() : null;
        perCedula_Persona = (grupoFamiliar.getPersona().getPerCedula() != null)
            ? grupoFamiliar.getPersona().getPerCedula().toString() : null;
        proInmCod_PropietarioInmueble = (grupoFamiliar.getPropietarioInmueble()
                                                      .getProInmCod() != null)
            ? grupoFamiliar.getPropietarioInmueble().getProInmCod().toString()
            : null;
        rowSelected = !rowSelected;
    }

    /**
    * <p>Bound to commandLink actionListener in the ui that renders/unrenders
        * the Customer details for editing.</p>
        */
    public void toggleSelected(ActionEvent e) {
        grfCod = grupoFamiliar.getGrfCod().toString();
        estCod_Estado = (grupoFamiliar.getEstado().getEstCod() != null)
            ? grupoFamiliar.getEstado().getEstCod().toString() : null;
        perCedula_Persona = (grupoFamiliar.getPersona().getPerCedula() != null)
            ? grupoFamiliar.getPersona().getPerCedula().toString() : null;
        proInmCod_PropietarioInmueble = (grupoFamiliar.getPropietarioInmueble()
                                                      .getProInmCod() != null)
            ? grupoFamiliar.getPropietarioInmueble().getProInmCod().toString()
            : null;
        rowSelected = !rowSelected;
    }

    public void setGrupoFamiliar(GrupoFamiliar grupoFamiliar) {
        this.grupoFamiliar = grupoFamiliar;
    }

    public GrupoFamiliarView getGrupoFamiliarView() {
        return grupoFamiliarView;
    }

    public void setGrupoFamiliarView(GrupoFamiliarView grupoFamiliarView) {
        this.grupoFamiliarView = grupoFamiliarView;
    }

    public String getEstCod_Estado() {
        return estCod_Estado;
    }

    public void setEstCod_Estado(String estCod_Estado) {
        this.estCod_Estado = estCod_Estado;
    }

    public String getPerCedula_Persona() {
        return perCedula_Persona;
    }

    public void setPerCedula_Persona(String perCedula_Persona) {
        this.perCedula_Persona = perCedula_Persona;
    }

    public String getProInmCod_PropietarioInmueble() {
        return proInmCod_PropietarioInmueble;
    }

    public void setProInmCod_PropietarioInmueble(
        String proInmCod_PropietarioInmueble) {
        this.proInmCod_PropietarioInmueble = proInmCod_PropietarioInmueble;
    }

    public String getGrfCod() {
        return grfCod;
    }

    public void setGrfCod(String grfCod) {
        this.grfCod = grfCod;
    }

    public boolean isRowSelected() {
        return rowSelected;
    }

    public void setRowSelected(boolean rowSelected) {
        this.rowSelected = rowSelected;
    }
}
